Field of the Invention
The invention is generally related to the area of multimedia technologies in consumer electronics industry. In particular, the invention is related to techniques for managing a playlist for playback, wherein the playlist is structured based on metadata to accommodate as many items as desired in a limited memory space without compromising the manageability of the playlist.
The Background of Related Art
The desire of enjoying multimedia productions such as music audio or video has been growing along with the advance of technologies in the consumer electronics industry. With the proliferation of the digital multimedia, a user can easily possess a large collection of audio or video files. One of the preferable ways to listen to or view these files is to play the files in accordance with a playlist. The playlist is an ordered list of a group of multimedia items. A player can play all items in the playlist, one after another in a certain order. In general, a user would create a playlist suited for his/her personal preference. Using a playlist, a person can choose only the audios or videos he/she likes and skip over others. For example, a person likes only to listen to a couple of tracks in an album including many tracks, or a particular album or few audio tracks from a selected artist. A playlist can be helpful and used to organize the selected items and skip over those unselected without further interventions from a user.
Traditionally, the playlist employs a linear data structure to store information of each item in the memory. The information contains an address identifier (e.g., Uniform Resource Locator or URL) that points to a playable media source and a name identifier for identifying the playable source (e.g., a name of a track, or a string including a name of the track plus an artist name, a name of an album and/or a type of music). Using a playlist for audios as an example, a user can add tracks to the playlist by browsing a music library first and then selecting either one track or a group of tracks in the music library.
As the number of favorable tracks in a playlist increases, it would be difficult or tedious to manage the playlist. For example, it is assumed that a person has a collection of music library with 5000 song tracks in several albums as shown in FIG. 6. If a playlist 600 was to be created to include personal favorable tracks that take up only 25% of the entire collection, the playlist 600 will have 1250 tracks. Deleting, adding or swapping the positions of tracks is a matter of managing the playlist 600 of 1250 tracks. However, if the collection further increases, the playlist 600 would grow into a lengthy list (e.g., greater than 10,000 tracks) that would eventually defeat the purpose of having a playlist, because the structure of such playlist is not meant for managing so many tracks. For example, when a new album or a group of tracks is added into a playlist, depending on the location the new album is added in the playlist, many items originally in the playlist will be sequentially shifted to accommodate the individual items in the album or the group. The added individual items do not preserve the group information as to the origin of the source (e.g., which album these tracks are from or information regarding an operation of how they are added). After some manipulations on the playlist (e.g., random play, adding new tracks, or re-ordering of tracks), when an album is to be deleted from the playlist, such operation could be difficult because no exact information is available as to which items belong to the album. Often, a user has to go through the entire playlist to manually select those that are believed belong to the album for deletion from the playlist.
There is, therefore, a need for managing a playlist with intelligent and flexible manipulation. To accommodate a growing playlist, there is another need for solutions that manage the playlist with as many items as desired, in a given memory space, without sacrificing the manageability of the playlist.